package com.test.clyq.service;

import java.util.List;

import com.test.clyq.entity.Users;
import com.test.clyq.entity.UsersLog;
import com.test.util.Pagination;

/**
 * UsersLogService. <br>
 * 管理员日志信息.
 * <p>
 * Copyright: Copyright (c) 2010-4-18
 * <p>
 * Company: 北京宽连十方数字技术有限公司
 * <p>
 * Author: liuxl@c-platform.com
 * <p>
 * Version: 1.0
 * <p>
 */
public interface UsersLogService {

	/**
	 * 新增用户日志信息
	 * 
	 * @param userLog
	 *            用户日志实例
	 */
	public void addUsersLog(UsersLog userLog);

	/**
	 * 根据管理员日志ID删除管理员日志
	 * 
	 * @param id
	 *            管理员日志ID
	 * @param user
	 *            用户实例
	 * @return true or false
	 */
	public boolean delUsersLogById(Long id, Users user);

	/**
	 * 根据管理员日志id获得管理员日志信息
	 * 
	 * @param id
	 *            管理员日志ID
	 * @return NLUsersLog 管理员日志实体
	 */
	public UsersLog getUsersLogById(Long id);

	/**
	 * 获得管理员日志信息列表
	 * 
	 * @return 管理员日志信息列表结果集合
	 */
	public List<UsersLog> getUsersLog();

	/**
	 * 根据用户登陆名称获得管理员日志信息
	 * 
	 * @param name
	 *            用户登陆名称
	 * @return NLUsersLog 管理员日志实例
	 */
	public UsersLog getUsersLogByName(String name);

	/**
	 * 根据用户ID获得管理员日志信息
	 * 
	 * @param userId
	 *            用户ID
	 * @return NLUsersLog 管理员日志实例
	 */
	public UsersLog getUsersLogByUsersId(Long usersId);

	/**
	 * 获得管理员日志列表（分页使用）
	 * 
	 * @return 管理员日志列表结果集合
	 */
	public List<UsersLog> usersLogList(Pagination pagination);

	/**
	 * 获得管理员日志列表（搜索使用）
	 * 
	 * @return 管理员日志信息列表结果集合
	 */
	public List<UsersLog> usersLogListBySearch(Long userId, Long starTime, Long endTime, Pagination pagination);
}
